export interface IAccount {
  name: string
  password: string
}

export interface User {
  id?: number
  name: string
  token: string
}

export interface IResponseData {
  code: number
  data: User
}

// 登陆用户的ts类型
// 登陆用户部门角色ts类型
export interface IDepartment {
  id?: number
  name?: string
  parentId?: null
  createAt?: string
  updateAt?: string
  leader?: string
}

// 登陆用户部门权限ts类型
export interface IRole {
  id?: number
  name?: string
  intro?: string
  createAt?: string
  updateAt?: string
}

// 登陆用户ts类型
export interface IUserData {
  id?: number
  name?: string
  realname?: string
  cellphone?: number
  enable?: number
  createAt?: string
  updateAt?: string
  role?: IRole
  department?: IDepartment
}

// 登陆用户返回类型
export interface IUserResponse {
  code?: number
  data?: IUserData
}

// 用户菜单子ts类型
export type IUserMenuChildren = {
  id?: number
  url?: string
  name?: string
  sort?: number
  type?: number
  children?: null
  parentId?: number
}
// 用户菜单类型
export type IUserMenu = {
  id?: number
  name?: string
  type?: number
  url?: string
  icon?: string
  sort?: number
  children?: Array<IUserMenuChildren>
}
// 用户菜单ts返回类型
export interface IUserMenuResponse {
  code?: number
  data?: Array<IUserMenu>
}
